#include "Direction.h"

#pragma once
class Position
{
public:
	Position() : xPosition(0), yPosition(-1), zPosition(0), dir() {}
	Position(float x, float y, float z) : xPosition(x), yPosition(y), zPosition(z), dir() {}
	~Position();
	Position(const Position&);
	Position& operator=(const Position&);

	//accessors
	float getX() const { return xPosition; }
	float getY() const { return yPosition; }
	float getZ() const { return zPosition; }
	Direction getDir() const { return dir; }

	//mutators
	void setX(float x) { xPosition = x; }
	void setY(float y) { yPosition = y; }
	void setZ(float z) { zPosition = z; }
	void setDir(Direction d) { dir = d; }

private:
	float xPosition, yPosition, zPosition;
	Direction dir;
};